package singletonMode;

/**
 * @author： pang-yun
 * @date： 2021-08-26 20:53
 * 功能目的 ：用于
 * 概念：
 * 　　java中单例模式是一种常见的设计模式，单例模式的写法有好几种，这里主要介绍三种：懒汉式单例、饿汉式单例、登记式单例。
 * 　　单例模式有以下特点：
 * 　　1、单例类只能有一个实例。
 * 　　2、单例类必须自己创建自己的唯一实例。
 * 　　3、单例类必须给所有其他对象提供这一实例。
 */


//懒汉式  单例类  在第一次调用自己时实例化
    //Singleton通过将构造方法限定为private避免了类在外部被实例化，在同一个虚拟机范围内，Singleton的唯一实例只能通过getInstance()方法访问。
    //此例是线程不安全的
public class Singleton {
    private Singleton() {
    }

    private static Singleton singleton = null;

    //静态工厂方法
    public static Singleton getSingleton() {
        if (singleton == null)
            singleton = new Singleton();
        return singleton;
    }

}
